#include "Date.h"

void DateTest1(void)
{
	Date d1;
	d1.Print();

	Date d2(2024, 9, 1);
	d2.Print();

	Date d3(d2);
	cout << d3;

	d3 = d1;
	cout << d3;
}

void DateTest2(void)
{
	Date d1(2024, 9, 1);
	Date d2(2024, 12, 24);

	cout << d1 - d2 << endl;
	cout << d1 - 100 << d1 << endl;
	cout << (d1 -= 100) << d1 << endl;
	cout << (d1 -= (-100)) << d1 << endl << endl;

	cout << d2 + 100 << d2 << endl;
	cout << (d2 += 100) << d2 << endl;
	cout << (d2 += (-100)) << d2 << endl << endl;

	cout << d1;
	cout << ++d1 << d1 << endl;
	cout << d1++ << d1 << endl;
	cout << --d1 << d1 << endl;
	cout << d1-- << d1 << endl;
}

void DateTest3(void)
{
	Date d1(2024, 9, 1);
	Date d2(2024, 12, 24);

	cout << 100 - d1 << d1 << endl;
	cout << (100 -= d1) << d1 << endl;
	cout << (-100 -= d1) << d1 << endl << endl;

	cout << 100 + d2 << d2 << endl;
	cout << (100 += d2) << d2 << endl;
	cout << (-100 += d2) << d2 << endl << endl;
}

void DateTest4(void)
{
	Date d1;
	Date d2(2024, 9, 1);
	Date d3(2024, 12, 24);

	cout << (d1 == d2) << " ";
	cout << (d1 < d2) << " ";
	cout << (d1 > d2) << " ";
	cout << (d1 != d2) << endl;

	d2 = d1;
	cout << (d1 == d2) << " ";
	cout << (d1 < d2) << " ";
	cout << (d1 > d2) << " ";
	cout << (d1 != d2) << endl;

	d1 = d3;
	cout << (d1 == d2) << " ";
	cout << (d1 < d2) << " ";
	cout << (d1 > d2) << " ";
	cout << (d1 != d2) << endl;
}

int main()
{
	//DateTest1();
	//DateTest2(); 
	//DateTest3();
	DateTest4();

	return 0;
}